Many conventional distributed systems do not support roaming users or roaming machines. A roaming user may wish to logon to the distributed system at domains other than his home domain. Similarly, roaming machines may wish to connect to the distributed system at sites outside of their home domain. The roaming user may use a roaming machine (e.g., a portable computer) to logon or may instead use a connected computer that is available at the logon site. The conventional systems that have supported such roaming users and machines have provided the support at the expense of efficiency and increased vulnerability. For example, certain conventional distributed systems store credentials information at a home domain of the user/machine. The credentials information stored at the home domain is examined when the user/machine tries to connect to the system at a different domain. The credentials information is examined to determine whether the user/machine is permitted to connect to the distributed system. In order to facilitate roaming users and machines, these conventional distributed systems replicate the credentials information to each potential connection domain in the distributed system (i.e., to each domain).
This approach of replicating credentials across the system suffers from several drawbacks. First, the replication of the credentials information is costly and time-consuming. Second, the credentials information must be replicated frequently because credentials must be updated each time that the credentials information of any user or machine changes. Third, the replication of credentials may not be successful due to intermittent failure, and, thus, the proper credentials information may not reach all the targeted destinations in the distributed system. Fourth, this approach poses a security threat because it provides more locations within the distributed system that are susceptible to attack.